home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / COMMUNIC / BULLETIN / 0340A.ZIP / ODOC_000.ARC / REF_CTRL.DOC < prev    next >
Text File  |  1987-01-05  |  20KB  |  451 lines

  1.  
  2.                                      OPUS 
  3.  
  4.            (c)Copyright 1986, Wynn Wagner III, All Rights Reserved.
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.                              The Embedded Commands
  15.  
  16.  
  17.                                  11 October 1986
  18.  
  19.  
  20.  
  21.  
  22.               "Toto, I've a feeling we're not in Kansas any more."
  23.  
  24.                                              --- The Wizard of Oz
  25.  
  26.  
  27.  
  28.  
  29. UPFRONT                     The Embedded Commands              11 October 1986
  30. ------------------------------------------------------------------------------
  31.  
  32. You can lead a full and meaningful life without using any of these
  33. control codes.  In fact, misusing them can probably lead to a lot  of
  34. grief.  There is nothing here for the novice.  If you are not intimately
  35. familiar with Opus and running communication systems, please don't continue.
  36.  
  37. Most of the control codes assume you know what you are doing.  Because the
  38. GBS/BBS files are prepared with a word processor or text editor (ie...not
  39. using any Opus software), there is no way for Opus to check your work.
  40. You should review any files you create using Opus's KEYBOARD MODE before
  41. trusting the file to an on-line situation.  The Control-O commands (below)
  42. can be particularly lethal if you aren't careful.
  43.  
  44. An overabundance of control codes in a BBS/GBS file can make a totally
  45. unmaintainable file.  You can build these files using any text editor
  46. that's capable of inserting control codes into files, but I would consider
  47. such a method the "Assembly Language of BBS/GBS Files".  A handy Opus sysop
  48. utility would be some sort of program (eg. WYSIWYG BBS/GBS editor) to make
  49. these control codes more readable to the sysop during development.  At this
  50. writing, no such utility exists.
  51.  
  52.  
  53.  
  54.  
  55. SUGGESTIONS                 The Embedded Commands              11 October 1986
  56. ------------------------------------------------------------------------------
  57.  
  58. [soapbox on]
  59.  
  60. It's very possible to use these commands to turn a perfectly good system
  61. into one full of gimcracks (useless junk).  An Opus sysop has an order of
  62. magnitude more power over his/her system than does a Fido<tm> v11 sysop.
  63.  
  64. If you take that control, you must also share the responsibility.  I think
  65. it's great to add a little spice to a system, but the average user doesn't
  66. call in order to see his/her screen wiggle.  These commands are intended
  67. to give the experienced sysop lots of versatility.
  68.  
  69. They are very easy to over-do!
  70.  
  71. Also... remember that if you use the MsDOS graphics characters in a BBS/GBS
  72. file, you are going to make non-MsDOS screens look funny because they
  73. won't know how to display the characters.  There is absolutely nothing
  74. "non-standard" in Opus itself.  If you choose to add such features, you
  75. also need to be prepared to answer questions and/or complaints about them.
  76.  
  77. [soapbox off]
  78.  
  79.  
  80.  
  81. COMMAND LISTING             The Embedded Commands              11 October 1986
  82. ------------------------------------------------------------------------------
  83.  
  84.  
  85.                  "Life is the process of figuring out things
  86.                   which you are never going to do again."
  87.                                                          -E.S.V.
  88.  
  89.  
  90. These control codes can be inserted into any .BBS or .GBS file.
  91. The only exception is DIR.BBS ... which must be a plain text file.
  92.  
  93.  
  94.  
  95.                   THE BASICS -------------------------------------------------
  96.  
  97.          ^A       ... "Press ENTER to continue: "
  98.          ^B       ... disable ^C/^K aborting
  99.          ^C       ... enable ^C/^K aborting
  100.          ^D       ... Mark that it's a good time for a "MORE?"
  101.          ^E       ... Turn auto-More ON  (default)
  102.          ^F       ... COMBINATION COMMAND (see below)
  103.          ^G       ... Ring the caller's bell
  104.          ^H       ... Backspace
  105.          ^I       ... Tab
  106.          ^J       ... Line feed
  107.          ^K       ... Turn auto-More OFF
  108.          ^L       ... Clear screen
  109.          ^M       ... Carriage return
  110.          ^N       ... [ reserved ]
  111.          ^O       ... COMBINATION COMMAND (see below)
  112.          ^P       ... COMBINATION COMMAND (see below)
  113.          ^Q       ... Used for XON/XOFF. Never use this.
  114.          ^R       ... [ reserved ]
  115.          ^S       ... Used for XON/XOFF.  Never use this.
  116.          ^T       ... [ reserved ]
  117.          ^U       ... [ reserved ]
  118.          ^V       ... [ reserved ]
  119.          ^W       ... [ reserved ]
  120.          ^X       ... [ reserved ]
  121.          ^Y       ... [ reserved ]
  122.          ^Z       ... MsDOS end of file marker.  Never use this.
  123.           
  124.           
  125.           
  126.                   DATA DISPLAY -----------------------------------------------
  127.  
  128.                   NOTE: Both command characters in this section are
  129.                         CONTROL characters.  The `^' symbol means `control.'
  130.                         For example, `^F' represents CONTROL-F.
  131.  
  132.          ^F^A     ... quote of the moment
  133.          ^F^B     ... user's name
  134.          ^F^C     ... user's city/state
  135.          ^F^D     ... current date
  136.          ^F^E     ... total number of calls user has made to system
  137.                       expressed as an ORDINAL number (eg. `1st', `2d', etc)
  138.          ^F^F     ... user's first name
  139.          ^F^G     ... dramatic one-second pause
  140.          ^F^K     ... total minutes on-line in the last 24-hours,
  141.                       including the time for the current call
  142.          ^F^L     ... length of the current call so far (in minutes)
  143.          ^F^N     ... control-niel (disconnect)
  144.          ^F^O     ... number of minutes remaining for this call
  145.          ^F^P     ... written-out date/time when the user has to be
  146.                       off the system.  NOTE: This uses a built-in Lattice-C
  147.                       routine which appends the line with a <CR/LF>.  You
  148.                       should consider using ^F^P at the END of a line with
  149.                       no punctuation ... until Prof.Norton and I can get in
  150.                       and change a couple of things.
  151.          ^F^Q     ... number of calls to system to date (ORDINAL NUMBER)
  152.          ^F^R     ... NET downloads today (download minus upload)
  153.                       If uploads are greater than downloads, this number
  154.                       will be negative.
  155.          ^F^T     ... current time
  156.          ^F^U     ... on a questionnaire, all answers are required
  157.          ^F^V     ... on a questionnaire, all answers are optional
  158.          ^F^W     ... total user uploads
  159.          ^F^X     ... total user downloads
  160.          ^F^Y     ... upload:download ratio
  161.  
  162.  
  163.  
  164.  
  165.                   QUESTIONAIRES, SURVEYS, ORDER FORMS ------------------------
  166.  
  167.                   NOTE: The second character of the commands in this section
  168.                         is a REGULAR ("printable") character ... NOT a
  169.                         control character.
  170.  
  171.                   HINT: Calm down a little, there are samples at the end
  172.                         of this file.
  173.  
  174.          ^OMd     ... store the last `^OR' response to the answer file.
  175.                       (See `^OR' below).  `d' is is a description of the
  176.                       item which is NOT displayed.  The description is
  177.                       stored in the answer file.  Also, see the examples
  178.                       at the end of this file for more information.
  179.          ^ONd     ... let the user type a line and store it in the user
  180.                       file.  This roughly corresponds to the Fido<tm> "/"
  181.                       command in questionaires.  `d' is for a description
  182.                       of the entry in the answer file.
  183.          ^OOf     ... open an answer file. `F' is a fully-qualified file 
  184.                       name including path, node, and extemsion.
  185.          ^OP      ... post user information to the answer file
  186.  
  187.  
  188.  
  189.  
  190.                   FLOW AND USER INTERACTION ----------------------------------     
  191.  
  192.                   NOTE: The second character of the commands in this section
  193.                         is a REGULAR ("printable") character ... NOT a
  194.                         control character.
  195.  
  196.                         "Remember-- no matter where you go, there you are."
  197.                                                           --Buckaroo Banzai
  198.  
  199.          ^OCp     ... call MsDOS with the command "p".  This is an
  200.                       embedded "O)utside" command.  "P" is some command,
  201.                       possibly the name of a program or batch file.  It
  202.                       is sent to MsDOS (via Command.Com) without 
  203.                       modification.
  204.          ^OFb     ... "On exit".  Declare the name of a GBS/BBS file to
  205.                       be transmitted if, for any reason, the current file
  206.                       is terminated.
  207.          ^OQ      ... quit the file immediately
  208.          ^ORv     ... read menu. `V' is a sequence of characters ... a list
  209.                       of the valid responses.  Opus considers all of the
  210.                       characters between the `R' and the first character
  211.                       less than or equal to the space character to be part of
  212.                       the list.  In other words, you terminate the list with
  213.                       a space, tab, end of line, or any other control char-
  214.                       acter.  Refer to an "ASCII CHART" for help in finding
  215.                       what characters are "below" the space.  Opus takes care
  216.                       of upper/lowercase conversion for you.  It is your
  217.                       responsibility to handle any user prompts: there is no
  218.                       display associated with this command.  "Command
  219.                       stacking" is fully supported.  If the user types an
  220.                       unrecognized character, Opus will ask him/her to try
  221.                       again.
  222.          ^OS      ... show another file.  The REST of the current line is
  223.                       considered the name of a BBS/GBS file.  Do *not* 
  224.                       include the file's extension.  You can include a
  225.                       drive and path.  Most settings (eg Color, Auto-More)
  226.                       are maintained across file boundries.  If the file
  227.                       you specify doesn't exist, the entire display sequence
  228.                       is ended and the user is returned to Opus.
  229.          ^OT      ... top of file (dangerous: can produce an "endless loop")
  230.                       Useful only for handling "fall-through" menu situations
  231.                       and (with ^B set) for handling niels.  (ah-hem)
  232.          ^OUc     ... user response.  "C" is a single character.  It is the
  233.                       way to process information from the read menu (^OR)
  234.                       command.  If the user's most recent respons was not
  235.                       the value you give for `c', the REST OF THE CURRENT
  236.                       LINE is ignored.
  237.  
  238.  
  239.  
  240.                   PRIV CONTROL -----------------------------------------------
  241.  
  242.                   NOTE: The second character of the commands in this section
  243.                         is a REGULAR ("printable") character ... NOT a
  244.                         control character.
  245.  
  246.  
  247.                   Dealing with the rest of the file...
  248.  
  249.          ^PD      ... Below Disgraced don't see rest of file
  250.          ^PN      ... Below Normal don't see rest of file
  251.          ^PP      ... Below Privil (or Privel) don't see rest of file
  252.          ^PE      ... Below Extra don't see rest of file
  253.          ^PA      ... Below Assistant sysop don't see rest of file
  254.          ^PS      ... Below Sysop don't see rest of file
  255.  
  256.  
  257.                   Commands dealing with the rest of the current line...
  258.  
  259.          ^PLD     ... Below Disgraced don't see rest of line
  260.          ^PLN     ... Below Normal don't see rest of line
  261.          ^PLP     ... Below Privil (or Privel) don't see rest of line
  262.          ^PLE     ... Below Extra don't see rest of line
  263.          ^PLA     ... Below Assistant sysop don't see rest of line
  264.          ^PLS     ... Below Sysop don't see rest of line
  265.  
  266.  
  267.  
  268.  
  269.  
  270.                   FIDO<tm> COMPATIBLE QUESTIONAIRE COMMANDS ------------------
  271.  
  272.                       Important:  All of the functionality in the following
  273.                       ---------   commands is available with ^O commands.
  274.                                   None of the following are guaranteed 
  275.                                   beyond Opus Version Zero.  Except for
  276.                                   some unusual circumstance, you should use
  277.                                   the ^O commands instead of these.
  278.  
  279.          +nt      ... column one only.  Signals a multiple choice answer.
  280.                       The `n' is actually a digit.  EXAMPLE: `+3' would
  281.                       accept 1, 2, or 3 as an answer.  'T' is normal text.
  282.                       Opus will ask for the answer after the line of
  283.                       text is displayed.  The digit is
  284.  
  285.          /t       ... column one only. 'T' is normal text.  After displaying
  286.                       and text, Opus will wait for the user to type some
  287.                       sort of character data.  The answer is stored in
  288.                       the answer file.
  289.  
  290.          !        ... column one only.  If in the most recent multiple
  291.                       choice question (see `+'), the user picked the highest
  292.                       option (eg. `3' above), the questionaire will 
  293.                       terminate immediately.
  294.  
  295.          *        ... column one only.  Put some user info (eg.name) into
  296.                       the answer file.
  297.          
  298.          ?t       ... column one only.  'T' is normal text which is not
  299.                       transmitted.  Instead, it is stored in the answer
  300.                       file.  This command is a Fido<tm> enhancement.  It
  301.                       is not guaranteed beyond Opus Version Zero.  You
  302.                       should try to use a ^O command instead.
  303.  
  304.                       Example:
  305.                                     Question file:
  306.                                              ?NAME
  307.                                              /What is your name?
  308.                                     Answer file:
  309.                                              NAME Mark Twain
  310.  
  311.  
  312.  
  313.  
  314.                   FOR FILES.BBS ONLY (Fido<tm> compatibility) ----------------
  315.  
  316.          @        ... in column one, stops display for those under
  317.                       AsstSysop.  This is for Fido<tm> compatibility only.
  318.                       You should not count on this remaining after
  319.                       Version Zero.  Use a ^P command instead.
  320.  
  321.          -        ... column one only.  turns on WHITE.  The display will
  322.                   remain white until the next file name.
  323.  
  324.  
  325.  
  326. ------------------------------------------------------------------------------
  327.  
  328.  
  329.  
  330.          NOTE: There are several ^F commands that deal with the amount
  331.                of time a user has remaining.  Until the user is totally
  332.                through the logon procedure, he/she will have about 10
  333.                minutes.  The use of these commands prior to the first
  334.                MAIN MENU may produce unexpected results.
  335.  
  336.  
  337.  
  338. ------------------------------------------------------------------------------
  339. EXAMPLE 1
  340.  
  341. CONTENTS OF THE EXAMPLE 1 FILE:
  342.  
  343.                  Please select one of these:
  344.                     H)elp on using the system
  345.                     T)rojan horse program alert
  346.                     E)quipment used on-line
  347.                     Q)uit
  348.  
  349.                  Select: ^ORhteq
  350.                  ^L
  351.                  ^OUh^OSc:\opus\morehelp
  352.                  ^OUt^OSc:\opus\trojans
  353.                  ^OUq^Oq
  354.  
  355.                  We use an AT computer with a 30 meg Seagate disk drive.
  356.                  The modem is a USR Courier 2400.  There is 640k system
  357.                  memory with 3 megabytes of extended memory which is used
  358.                  as a RAM disk.
  359.  
  360.                  ^OT
  361.  
  362.  
  363.  
  364. NOTES FOR EXAMPLE 1:
  365.  
  366. A short menu system for multiple bulletins.  First the menu is displayed.
  367. Then, after "Select: ", Opus will wait for the caller to type `H', `T', 
  368. or `A'.  For aesthetics, we clear the screen after the menu response (^L).
  369. Then.... if the caller typed `H', we will display the file MOREHELP.  If
  370. it's `T', the caller will see TROJANS.  If the caller typed `Q', we will
  371. exit the file display and return to Opus.  The only unaccounted-for menu
  372. response is `E' ... which is taken care of by the material at the end.
  373. In other words, if the user gets to the part beginning with "We use an...",
  374. he/she must have typed an `E'.  It's the "fall-through" case here.  Because
  375. Opus doesn't have to change to another file, the fall-through will always
  376. be the quickest.  Finally, at the end of the file, we tell Opus to recycle
  377. and display the menu again (^OT).
  378.  
  379.  
  380.  
  381. ------------------------------------------------------------------------------
  382. EXAMPLE 2
  383.  
  384. CONTENTS OF THE EXAMPLE 2 FILE:
  385.  
  386.          Welcome to the board, ^F^B.
  387.          ^OOc:\opus\newusers.txt
  388.          ^OP
  389.  
  390.          What is your occupation? ^ONoccupation
  391.  
  392.          Please find your favorite color ...
  393.  
  394.                   B)lue    R)ed     M)agenta
  395.                   L)ilac   Y)ellow  P)uce
  396.  
  397.          Type the first letter of your choice: ^ORbrmlyp
  398.          ^OMchoice
  399.          ^OUbBlue! really? Wow, that's my favorite color, too!
  400.  
  401.          Thanks for taking the time to fill out this questionaire.
  402.  
  403.  
  404. NOTES FOR EXAMPLE 2:
  405.  
  406. A short survey.  First we do a welcome that includes the user's name (^F^B).
  407. Then we setup an answer file called C:\OPUS\NEWUSERS.TXT.  Any responses
  408. will be put into this file.  Note that the answer file stays open across
  409. files ... should you swap files using ^OS.  The first item we put into the
  410. answer file is the user's name (^OP).  It is NOT ever necessary to ask a
  411. user "What is your name"... not even a new user.  It is easier on the system
  412. and the caller to use the ^OP command rather than being redundant.
  413.  
  414. The first question deals with the user's occupation.  The display would
  415. look like this:
  416.  
  417.                   What is your occupation? _
  418.  
  419. Whether an answer is required depends on whether you have used the ^F^U 
  420. or ^F^V commands.
  421.  
  422. If the caller typed "accountant" then your answer file would contain
  423. this line:
  424.  
  425.                   occupation: accountant
  426.  
  427. The description "occupation" was part of the ^ON command itself.
  428.  
  429. The next piece of business is a multiple choice question.  It works exactly
  430. like the MENU in example #1 above.  The addition is `^OMchoice' to store
  431. the user's response in the answer file.  For example, if the user selected
  432. RED, the answer file would look like this:
  433.  
  434.                   choice: R
  435.  
  436. Note that if the caller likes BLUE, Opus will get all excited.  See the
  437. `^OU' statement.  We use this line for two reasons: (1)to show that you
  438. can get exceedingly (excrutiatingly) clever; and (2)you can combine almost
  439. any ^O command.
  440.  
  441. You can have more than one answer file.  Every time you use ^OO, the 
  442. current answer file is closed and the new one opened or created.  One 
  443. side effect involves opening the same file... not advised for normal
  444. operation... but that is one way to force Opus to physically write to
  445. disk any responses it has buffered.
  446.  
  447.  
  448.                                      ###
  449.  
  450.  
  451.